package com.hotel.service;

import com.hotel.entity.User;
import com.hotel.utils.Result;

import java.util.Map;
import java.util.Set;

/**
 * @author 夏智力
 * @FileName UserService
 * @date 2021/6/21 22:32
 * @Software: IntelliJ IDEA
 */
public interface UserService {

    User selectById(int id);

    int insertUser(User user);

    Map<String, Object> register(User user);

    int updateUser(User user);

    int deleteUser(int id);


    /*****************************
     *
     *
     *      以下吴泽胜编写
     *
     *****************************/
    /**
     * 获取用户姓名
     * @param username
     * @return
     */
    public User selectUserByName(String username);

    /**
     * 通过用户名获取用户角色集合
     *
     * @param username 用户名
     * @return 角色集合
     */
    Set<String> selectUserRolesSet(String username);

    /**
     * 通过用户名获取用户权限集合
     *
     * @param username 用户名
     * @return 权限集合
     */
    Set<String> selectUserPermissionsSet(String username);

    /**
     * 校验用户是否有效
     *
     * @param User
     * @return
     */
    Result checkUserIsEffective(User User);
}
